home *** CD-ROM | disk | FTP | other *** search
- ; SOURCE.LNG
- ; Copyright Rick Maddy 1992
-
- ; This is the default language definition file. This file should reside in
- ; the same directory as SOURCE.EXE. Feel free to add any additional languages
- ; or take ones out you do not use. You may also change an existing language.
- ; Please follow the guidelines outlined in SOURCE.DOC.
-
-
- ; Definition for the C and C++ languages - based on ANSI C and AT&T C++.
-
- ; Identifiers are made up of letters, numbers, and underscore.
- ; Comments are surrounded by /* */ or begin with // and end at end-of-line.
- ; Comments may occur any where on a line.
- ; Strings are placed in double quotes and characters are placed in single
- ; quotes. Both " and ' are escaped by preceding it by a backslash.
- ; The only block is the { } pair.
- ; C is case specific.
-
- beginlang C .c .h .cpp .hpp
- abcdefghijklmnopqrstuvwxyz0123456789_
- :comment:
- /*
- */
- 0
- //
-
- 0
- :string:
- "
- \
- '
- \
- :block:
- {
- }
- :keyword:
- auto
- break
- case
- char
- catch
- class
- const
- continue
- default
- delete
- do
- double
- else
- enum
- extern
- float
- for
- friend
- goto
- if
- inline
- int
- long
- new
- operator
- private
- protected
- public
- register
- return
- short
- signed
- sizeof
- static
- struct
- switch
- template
- this
- typedef
- union
- unsigned
- virtual
- void
- volatile
- while
- endlang case full
-
-
- ; Definition for the Pascal language - based on Turbo Pascal.
-
- ; Identifiers are made up of letters, numbers, and underscore.
- ; Comments are surrounded by the { } or the (* *) pairs. Comments may
- ; ocur any where on a line.
- ; Strings and characters are placed within single quotes. A literal single
- ; quote is escaped by another single quote.
- ; Numerous blocks exists: begin end, record end, case end, repeat until
- ; Pascal is not case specfic and all keywords must be found in full.
-
- beginlang Pascal .pas .inc
- abcdefghijklmnopqrstuvwxyz0123456789_
- :comment:
- {
- }
- 0
- (*
- *)
- 0
- :string:
- '
- '
- :block:
- begin
- end
- record
- end
- case
- end
- repeat
- until
- :keyword:
- and
- asm
- array
- begin
- case
- const
- constructor
- destructor
- div
- do
- downto
- else
- end
- file
- for
- function
- goto
- if
- implementation
- in
- inline
- interface
- label
- mod
- nil
- not
- object
- of
- or
- packed
- procedure
- program
- record
- repeat
- set
- shl
- shr
- string
- then
- to
- type
- unit
- until
- uses
- var
- while
- with
- xor
- endlang nocase full
-
-
- ; Language definition for GW-BASIC.
-
- ; The 'if ... endif' block was not added because the 'if' statement has two
- ; syntaxes. The first is 'if ... then ... [else ...]'. This has no 'endif'.
- ; SOURCE would see the 'if' and begin the block. Since no 'endif' is present,
- ; the block line would never be terminated.
- ; Identifiers are madeup of letters, numbers, period, pound, and dollar.
- ; Comments begin with a single quote or the word rem and both are
- ; terminated by end-of-line.
- ; Strings are enclosed in double quotes.
- ; Two blocks exist: for next, while wend
- ; BASIC is not case sensitive and keywords must match in full.
- ; Only statements and commands are listed under keywords, no functions or
- ; variables. They may be added if desired.
-
- beginlang GW-BASIC .bas
- abcdefghijklmnopqrstuvwxyz0123456789.#$
- :comment:
- '
-
- 0
- rem
-
- 0
- :string:
- "
-
- :block:
- for
- next
- while
- wend
- :keyword:
- auto
- beep
- bload
- bsave
- call
- chain
- chdir
- circle
- clear
- close
- cls
- color
- com
- common
- cont
- data
- def fn
- defint
- defsng
- defdbl
- defstr
- def seg
- def usr
- delete
- dim
- draw
- edit
- else
- end
- environ
- erase
- error
- field
- files
- for
- get
- gosub
- return
- goto
- if
- input
- input#
- ioclt
- key
- kill
- let
- line
- list
- llist
- load
- locate
- lock
- lprint
- lprint using
- lset
- rset
- merge
- mid$
- mkdir
- name
- next
- new
- on
- open
- option base
- out
- paint
- palette
- palette using
- pcopy
- pen
- play
- poke
- preset
- pset
- print
- print using
- print#
- print# using
- put
- randomize
- read
- rem
- renum
- reset
- restore
- resume
- return
- rmdir
- run
- save
- screen
- shell
- sound
- stop
- strig
- swap
- system
- then
- timer
- tron
- troff
- unlock
- view
- view print
- wait
- wend
- while
- width
- window
- write
- write#
- endlang nocase full
-
-
- ; Language definition for Ada
-
- ; Identifiers are made up of letters, numbers, and underscore.
- ; Comments begin with the double hyphen and end at end-of-line. Comments
- ; may appear any where on a line.
- ; Strings are enclosed in double qoutes. Literal double qoutes are preceded
- ; by another double quote. Characters are enclosed in single quotes.
- ; Numerous blocks exist: begin end, if end if, case end case, loop end loop,
- ; record end record, package end, task end,
- ; select end select, while end loop, accept end
- ; Ada is case insensitive and keywords must match in full.
-
- beginlang Ada .ada
- abcdefghijklmnopqrstuvwxyz0123456789_
- :comment:
- --
-
- 0
- :string:
- "
- "
- '
-
- :block:
- begin
- end
- if
- end if
- case
- end case
- loop
- end loop
- record
- end record
- package
- end
- task
- end
- select
- end select
- accept
- end
- :keyword:
- abort
- abs
- accept
- access
- all
- and
- array
- at
- begin
- body
- case
- constant
- declare
- delay
- delta
- digits
- do
- else
- elsif
- end
- entry
- exception
- exit
- for
- function
- generic
- goto
- if
- in
- is
- limited
- loop
- mod
- new
- not
- null
- of
- or
- others
- out
- package
- pragma
- private
- procedure
- raise
- range
- record
- rem
- renames
- return
- reverse
- select
- separate
- subtype
- task
- terminate
- then
- type
- use
- when
- while
- with
- xor
- endlang nocase full
-
-
- ; Language definition for FORTRAN 77 - based on Microsoft FORTRAN.
-
- ; Identifiers are made up of letters and numbers.
- ; Comments are started by having a C or an asterik in column 1 and end with
- ; end-of-line.
- ; Strings are enclosed in single quotes. Literal single qoutes are preceded
- ; by another single quote.
- ; Three blocks: program end, funtion end, subroutine end
- ; FORTRAN is not case sensitive and keywords must match in full.
-
- beginlang FORTRAN .for
- abcdefghijklmnopqrstuvwxyz0123456789
- :comment:
- c
-
- 1
- *
-
- 1
- :string:
- '
- '
- :block:
- program
- end
- function
- end
- subroutine
- end
- :keyword:
- assign
- backspace
- block data
- call
- character
- close
- common
- complex
- continue
- data
- dimension
- do
- double precision
- else
- elseif
- end
- endfile
- endif
- equivalence
- external
- format
- function
- goto
- go to
- if
- then
- implicit
- integer
- inquire
- intrinsic
- logical
- open
- parameter
- pause
- program
- read
- real
- return
- rewind
- save
- step
- subroutine
- write
- endlang nocase full
-
-
- ; Language definition for assembly language programs
-
- ; Identifiers are made up of letters, numbers, underscor, at, dollar, and
- ; question mark.
- ; Comments start with a semicolon and end at end-of-line. Comments may
- ; begin any where on the line.
- ; Strings are enclosed in single quotes.
- ; There are no blocks.
- ; Keywords not entered since they are processor specific, add yours as
- ; desired.
-
- beginlang Assembly .asm
- abcdefghijklmnopqrstuvwxyz0123456789_@$?
- :comment:
- ;
-
- 0
- :string:
- '
- '
- :block:
- :keyword:
- endlang nocase full
-
-
- ; Language definition for dBASE programs
-
- ; Identifiers are made up of letters, numbers, and underscore.
- ; Comments begin with and asterik, double ampersand, or the word note.
- ; All end with end-of-line and may begin any where on a line.
- ; Strings are enclosed within double qoutes.
- ; Blocks are: do case endc, do whil endd, if endi, text endt
- ; dBASE is case insensitive and only the first four letters of keywords need
- ; to be found.
-
- beginlang dBASE .prg
- abcdefghijklmnopqrstuvwxyz0123456789_
- :comment:
- *
-
- 0
- &&
-
- 0
- note
-
- 0
- :string:
- "
-
- '
-
- :block:
- do case
- endc
- do whil
- endd
- if
- endi
- text
- endt
- :keyword:
- acce
- addi
- alia
- all
- all like
- appe
- appe from
- assi
- aver
- befo
- blan
- bott
- brow
- call
- canc
- case
- chan
- clea
- clea all
- clea fiel
- clea gets
- clea memo
- clea type
- clos
- cont
- copy
- copy file
- copy stru exte
- copy stru
- coun
- crea
- crea from
- crea labe
- crea quer
- crea repo
- crea scre
- crea view
- dele
- dir
- disp
- disp hist
- disp memo
- disp stat
- disp stru
- do
- do case
- do whil
- edit
- ejec
- else
- endc
- endd
- endi
- endt
- eras
- exce
- exit
- expo
- fiel
- find
- for
- from envi
- go
- goto
- head
- help
- if
- impo
- inde
- inpu
- inse
- join
- labe form
- last
- like
- list
- list hist
- list memo
- list stat
- list stru
- load
- loca
- loop
- modi comm
- modi file
- modi labe
- modi quer
- modi repo
- modi scre
- modi stru
- modi view
- modu
- noej
- note
- off
- on
- on erro
- on esap
- on key
- othe
- pack
- para
- pfs
- plai
- priv
- proc
- publ
- quit
- rand
- read
- reca
- rein
- rele
- rena
- repl
- repo
- rest
- resu
- retr
- retu
- retu to mast
- run
- samp
- save
- save to
- seek
- sele
- set
- set alte
- set bell
- set carr
- set cata
- set cent
- set colo
- set conf
- set cons
- set date
- set debu
- set deci
- set defa to
- set dele
- set deli
- set devi to prin
- set devi to scre
- set dohi
- set echo
- set esca
- set exac
- set fiel
- set filt
- set fixe
- set form
- set func
- set head
- set help
- set hist
- set inde
- set inte
- set marg
- set memo
- set menu
- set mess
- set odom
- set orde
- set path
- set prin
- set proc
- set rela
- set safe
- set scor
- set stat
- set step
- set talk
- set titl
- set type
- set uniq
- set view
- skip
- sort
- stor
- sum
- summ
- susp
- text
- to
- to file
- to prin
- top
- tota
- type
- upda on
- use
- wait
- whil
- with
- zap
- endlang nocase part 4
-
-
- ; Language definition for MS-DOS Batch files
-
- ; Identifiers are made up of letters, numbers, and underscore.
- ; Comments begin with the word rem and end at end-of-line. Comments may
- ; appear anywhere on a line.
- ; Strings are enclosed in double quotes.
- ; There are no blocks.
- ; Only batch file specific keywords are listed. Feel free to add all DOS
- ; commands if desired.
- ; Batch files are case insensitive and keywords must match in full.
-
- beginlang Batch .bat
- abcdefghijklmnopqrstuvwxyz0123456789_
- :comment:
- rem
-
- 0
- :string:
- "
-
- :block:
- :keyword:
- call
- echo
- for
- goto
- if
- pause
- rem
- shift
- endlang nocase full
-
-
- ; Language definition for COBOL based on Microsoft COBOL
-
- ; Identifiers are made up of letters, numbers, and hyphen.
- ; Comments begin with an asterik, slash or D in column 7 and end with
- ; end-of-line.
- ; Strings are enclosed in single or double quotes. A literal quote is
- ; preceded by itself.
- ; Cobol has no blocks
-
- beginlang COBOL .cob .cbl
- abcdefghijklmnopqrstuvwxyz0123456789-
- :comment:
- *
-
- 7
- /
-
- 7
- D
-
- 7
- :string:
- "
- "
- '
- '
- :block:
- :keyword:
- accept
- access
- add
- advancing
- after
- all
- alphabetic
- also
- alter
- alternate
- and
- are
- area
- areas
- ascending
- ascii
- assign
- at
- author
- auto-skip
- automatic
- background-color
- beep
- before
- bell
- blank
- blink
- block
- bottom
- by
- call
- cancel
- cd
- cf
- ch
- chain
- chaining
- character
- characters
- clock-units
- close
- cobol
- code
- code-set
- col
- collating
- column
- comma
- communication
- comp
- communication-0
- comp-0
- communication-3
- comp-3
- communication-4
- comp-4
- computational
- compute
- configuration
- contains
- control
- controls
- copy
- corr
- corresponding
- count
- currency
- data
- date
- date-compiled
- date-written
- day
- debug-contents
- debug-item
- debug-line
- debug-name
- debug-sub-1
- debug-sub-2
- debug-sub-3
- debugging
- decimal-point
- declaratives
- delete
- delimited
- delimiter
- depending
- descending
- destination
- de
- detail
- disable
- disk
- display
- division
- down
- duplicates
- dynamic
- egi
- eject
- else
- emi
- empty-check
- enable
- end
- end-of-page
- enter
- environment
- eop
- equal
- erase
- error
- escape
- esi
- every
- exception
- exclusive
- exhibit
- exit
- extend
- fd
- file
- file-control
- file-id
- filler
- final
- first
- footing
- for
- foreground-color
- from
- generate
- giving
- go
- greater
- group
- heading
- high-value
- high-values
- highlight
- i-o
- i-o-control
- identification
- if
- in
- index
- indexed
- initial
- initiate
- input
- input-output
- inspect
- installation
- into
- invalid
- is
- just
- justified
- key
- label
- last
- leading
- left
- left-justify
- length
- length-check
- less
- limit
- limits
- lin
- linage
- linage-counter
- line
- lines
- line-counter
- linkage
- lock
- locking
- low-value
- low-values
- manual
- memory
- merge
- message
- mode
- modules
- move
- multiple
- multiply
- native
- negative
- next
- no
- no-echo
- not
- number
- numeric
- object-computer
- occurs
- of
- off
- omitted
- on
- open
- optional
- or
- organization
- output
- overflow
- page
- page-counter
- perform
- pf
- ph
- pic
- picture
- plus
- pointer
- position
- positive
- printer
- printing
- procedure
- procedures
- proceed
- program
- program-id
- prompt
- queue
- quote
- quotes
- random
- rd
- read
- ready
- receive
- record
- records
- redefines
- reel
- references
- relative
- release
- remainder
- removal
- renames
- replacing
- report
- reports
- reporting
- rerun
- reserve
- reset
- return
- reverse-video
- reversed
- rewind
- rewrite
- rf
- rh
- right
- right-justify
- round
- run
- same
- sd
- search
- section
- security
- segment
- segment-limit
- select
- send
- sentence
- separate
- sequence
- sequential
- set
- sign
- size
- sort
- sort-merge
- source
- source-computer
- space
- spaces
- space-fill
- special-names
- standard
- standard-1
- start
- status
- stop
- string
- sub-queue-1
- sub-queue-2
- sub-queue-3
- subtract
- sum
- suppress
- symbolic
- sync
- synchronized
- table
- tallying
- tape
- terminal
- terminate
- text
- than
- through
- thru
- time
- times
- to
- top
- trace
- trailing
- trailing-sign
- type
- underline
- unit
- unlock
- unstring
- until
- up
- update
- upon
- usage
- use
- using
- value
- values
- varying
- wait
- when
- with
- words
- working-storage
- write
- zeros
- zeroes
- zero-fill
- endlang nocase full
-
-
- ; Language definition for Clipper 5.0 programs
-
- ; Identifiers are made up of letters, numbers, and underscore.
- ; Comments are enclosed in /* */ or begin with //, *, &&, or note and end
- ; with end-of-line.
- ; Strings are enclosed withing double qoutes or single quotes.
- ; Clipper is case insensitive and only the first four letters of keywords
- ; need to be found.
-
- beginlang Clipper .prg
- abcdefghijklmnopqrstuvwxyz0123456789_
- :comment:
- /*
- */
- 0
- //
-
- 0
- *
-
- 0
- &&
-
- 0
- note
-
- 0
- :string:
- "
-
- '
-
- :block:
- begi sequ
- end
- do case
- endc
- do whil
- endd
- whil
- endd
- for
- next
- if
- endi
- text
- endt
- :keyword:
- abs
- asc
- at
- begi sequ
- bof
- brea
- case
- cdow
- chr
- cmon
- col
- ctod
- date
- day
- decl
- dele
- devp
- do
- do case
- do whil
- dow
- dtoc
- dtos
- else
- empt
- end
- endc
- endd
- endi
- eof
- exit
- exp
- exte
- fcou
- fiel
- file
- floc
- for
- foun
- function
- if
- iif
- inke
- int
- last
- len
- loca
- lock
- log
- loop
- lowe
- ltri
- max
- memv
- min
- mont
- next
- othe
- para
- pcol
- pcou
- priv
- procedure
- prow
- publ
- recc
- recn
- reco
- repl
- retu
- rloc
- roun
- row
- rtri
- seco
- sele
- setp
- spac
- sqrt
- stat
- step
- str
- subs
- time
- to
- tran
- trim
- type
- uppe
- usin
- val
- valt
- whil
- with
- word
- year
- endlang nocase part 4
-